<?php
    include("inc/inc_init_admin.php");

    include_once("../clases/entidad/Votante.php");
    include_once("../clases/DAO/VotanteDAO.php");
    include_once("../clases/VotantesParser.php");


//Mensajes De Error
    $err_formato_archivo = "El formato del archivo es incorrecto. Se espera un archivo *.csv";
    $err_formato_datos = "Los datos ingresados no siguen el formato esperado";
    $err_mail_invalido = "Uno de los emails ingresados es inválido";
    $err_open_file = "Error al abrir el archivo";
    $err_file_format = "Formato de archivo incorrecto";

    $error = false;

    $vot_dao = new VotanteDAO();
    $vot_par = new VotantesParser();
    
    $id_encuesta = $_GET['id'];
    if(isset($id_encuesta))
        header("lista_encuestas_control.php");

    if(isset($_FILES['archivo']))
    {
        $res = $vot_par->importarListaArchivoCSV($_FILES['archivo'], $_POST['id_encuesta'], $_SESSION['id']);
        if(!is_array($res)){
            switch($res){
                case VotantesParser::INVALID_EMAIL:
                    $error[] = $err_mail_invalido;
                    break;
                case VotantesParser::OPEN_FILE_ERROR:
                    $error[] = $err_open_file;
                    break;
                case VotantesParser::FILE_FORMAT_ERROR:
                    $error[] = $err_file_format;
                    break;
                default:
                    $error[] = $err_formato_datos;
            }
        }

        if(!$error){
            $vot_dao->persistirLista($res);
            header("Location: lista_encuestas_control.php");
        }
    }
    
    if(!empty($_POST['lista_text']))
    {
        
        $res = $vot_par->importarListaTextoPlano($_POST['lista_text'], $_POST['id_encuesta'], $_SESSION['id']);
        if(!is_array($res)){
            switch($res){
                case VotantesParser::INVALID_EMAIL:
                    $error[] = $err_mail_invalido;
                    break;
                default:
                    $error[] = $err_formato_datos;
            }
        }
        if(!$error){
            $vot_dao->persistirLista($res);
            header("Location: lista_encuestas_control.php");
        }
    }

    if(!empty($_POST['lista_votantes'])){
        
    }

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />

<html>
	<head>
		<title> Gnu Poller </title>
                <link href="css/general.css" rel="stylesheet" type="text/css" />
                <script type="text/javascript" src="../js/jquery-1.3.2.min.js"></script>
                <script type="text/javascript">
                    $(document).ready(function(){
                       $("a#boton_agregar_votante").click(agregarVotante);
                       $("a.boton_eliminar_votante").click(eliminarVotante);
                       nombrarForm();
                    });

                    function agregarVotante(){
                        $("div#dyn_elements .votante").clone(true).appendTo($("#votantes_box")).slideDown();
                        nombrarForm();
                    }

                    function eliminarVotante(){
                        $(this).parents(".votante").slideUp(function(){$(this).remove();});
                    }

                    function nombrarForm(){
                        $("#votantes_box .votante").each(function(i){
                            prefix = "votantes[" + i + "]";
                            $(this).find(".input_nombre").attr("name", prefix + "[nombre]");
                            $(this).find(".input_email").attr("name", prefix + "[email]");
                        })
                    }
                </script>
                <style type="text/css">
                    table#formulario{
                        margin: 0 auto 0 auto;
                        width:300px;
                    }

                    table#formulario td{
                        text-align:left;
                    }

                    a.boton_eliminar_votante{
                        text-decoration:none;
                        color: red;
                        font-weight:bold;
                    }

                    a#boton_agregar_votante{
                        text-decoration:none;
                        color: green;
                    }

                    #dyn_elements, #dyn_elements .votante{
                        display:none;
                    }

                    div.error{
                        background-color:#CCCCCC;
                        color:red;
                        font-size:0.8em;
                    }
                </style>
        </head>
        <body>
<?php
    include("inc/inc_menu.php");
?>
            <h2> Asignar Votantes </h2>
            <?php
                if($error):
            ?>
                <div class="error">
                    <p> ¡Ha ocurrido un error y no se ha cargado ningun votante! </p>
            <?php
                    foreach($error as $e):
            ?>
                <span> <?php echo $e; ?> </span> <br>
            <?php
                    endforeach;
            ?>
                </div>
            <?php
                endif;
            ?>
            <div>
                <h3> Desde Archivo .CSV </h3>
                <form action="<?php echo $_SERVER['PHP_SELF'] . "?id=" . $id_encuesta; ?>"
                      enctype="multipart/form-data"
                      method="POST">
                    <input type="hidden" name="id_encuesta" value="<?php echo $id_encuesta; ?>">
                    Importar Archivo .CSV
                    <input type="file" name="archivo"> <br>
                    (Formato obtenido de la Catedra Virtual) <br>
                    <input type="submit" value="Guardar">
                </form>
            </div>
            <hr />
            <div>
                <h3> Lista en texto plano</h3>
                <form method="POST" action="<?php echo $_SERVER['PHP_SELF'] . "?id=" . $id_encuesta; ?>">
                    <input type="hidden" name="id_encuesta" value="<?php echo $id_encuesta; ?>">
                    Formato: "APELLIDO NOMBRE - EMAIL" <br>
                    <textarea name="lista_text" rows="10" cols="100"></textarea> <br>
                    <input type="submit" value="Guardar">
                </form>
            </div>
            <hr />
            <div>
                <h3> Ingreso Manual </h3>
                <form method="POST" action="<?php echo $_SERVER['PHP_SELF'] . "?id=" . $id_encuesta; ?>">
                    <input type="hidden" name="id_encuesta" value="<?php echo $id_encuesta; ?>">
                    <div id="votantes_box">
                        <div class="votante">
                            Apellido y Nombre: <input type="text" class="input_nombre">
                            Email: <input type="text" class="input_email">
                        </div>
                    </div>
                    <a href="#agregar_votante" id="boton_agregar_votante"> Agregar </a>
                    <br/>
                    <input type="submit" value="Guardar">
                </form>
            </div>
            <div id="dyn_elements">
                <div class="votante" style="display:none">
                    Apellido y Nombre: <input type="text" class="input_nombre">
                    Email: <input type="text" class="input_email">
                    <a href="#eliminar_votante" class="boton_eliminar_votante"> X </a>
                </div>
            </div>
        </body>
</html>
